# 2025.09.28力扣网刷题
# 三角形的最大周长——贪心、数组、数学、排序、第119场周赛——简单
# 给定由一些正数（代表长度）组成的数组 nums ，返回 由其中三个长度组成的、面积不为零的三角形的最大周长 。如果不能形成任何面积不为零的三角形，返回 0。
# 示例 1：
# 输入：nums = [2, 1, 2]
# 输出：5
# 解释：你可以用三个边长组成一个三角形 : 1 2 2。
# 示例 2：
# 输入：nums = [1, 2, 1, 10]
# 输出：0
# 解释：
# 你不能用边长 1, 1, 2 来组成三角形。
# 不能用边长 1, 1, 10 来构成三角形。
# 不能用边长 1、2 和 10 来构成三角形。
# 因为我们不能用任何三条边长来构成一个非零面积的三角形，所以我们返回 0。
# 提示：
# 3 <= nums.length <= 10^4
# 1 <= nums[i] <= 10^6

class Solution(object):
    def largestPerimeter(self, nums):
        """
        :type nums: List[int]
        :rtype: int
        """
        nums.sort()
        ans = 0
        length = len(nums)
        for i in range(length - 1, 1, -1):
            a = nums[i]
            b = nums[i - 1]
            c = nums[i - 2]
            if a >= b + c:
                continue
            else:
                ans = a + b + c
                break
        return ans